export const debounce = function (fn, time) {
  // 4.创建一个标记用来存放定时器的返回值
  let timeout = null
  return function () {
    clearTimeout(timeout)
    const args = arguments
    const context = this
    // 6.然后又创建一个新的 setTimeout, 这样就能保证输入字符后等待的间隔内 还有字符输入的话，就不会执行 setTimeout里面的内容
    timeout = setTimeout(async () => {
      // 7.这里进行防抖的内容
      await fn.apply(context, args)
    }, time)
  }
}
